package collection;

import java.util.ArrayList;
import java.util.Collection;
import java.util.HashSet;

/**
 * java.util.Collection 集合
 * 集合与数组类似，可以保存一组元素，但是其提供了多种不同的数据结构可供选择，且将
 * 元素的操作全部封装为了方法，使用便捷。
 * Collection下面常见的子接口有:
 * java.util.List:可重复且有序的集合
 * java.util.Set:不可重复且无序的集合
 * 元素是否重复是依靠元素自身的equals方法进行比较的，这意味着Set集合不能存放
 * equals比较为true的元素2次以上
 */
public class CollectionDemo1 {
    public static void main(String[] args) {
//        Collection c = new ArrayList();
        Collection c = new HashSet();
        /*
            boolean add(E e)
            向当前集合中添加一个元素，如果元素成功添加则返回值为true，否则为false
         */
        boolean flag = c.add("one");
        System.out.println("是否成功存入:"+flag);
        c.add("two");
        c.add("three");
        c.add("four");
        c.add("five");
        flag = c.add("one");//存放重复元素
        System.out.println("是否成功存入:"+flag);
        System.out.println(c);
//        c.add(123);//c.add(Integer.valueOf(123));
        /*
            int size()
            返回当前集合的元素个数
         */
        int size = c.size();
        System.out.println("size:"+size);
        /*
            empty:空的
            boolean isEmpty()
            判断当前集合是否为空集，如果为空则返回true，否则为false
            空集:该集合不含有任何元素 size=0
         */
        boolean isEmpty = c.isEmpty();
        System.out.println("是否为空集:"+isEmpty);
        /*
            void clear()
            清空当前集合
         */
        c.clear();
        System.out.println("集合被清空了");
        System.out.println(c);
        System.out.println("size:"+c.size());
        System.out.println("是否为空集:"+c.isEmpty());
    }
}




